package com.xm.service;

import com.xm.entity.UserTaskInfo;

import java.io.IOException;
import java.math.BigDecimal;
import java.util.List;

/**
 * @Author tianqin
 * @Date 2024/7/26 15:49
 * 约束下行子类行为
 */
public interface BuyXmGoodService {

    /**
     * 获取商品信息
     * @param archiveId
     * @return 商品列表id
     */
    List<Long> getGoodsInfo(String archiveId, UserTaskInfo userTaskInfo, BigDecimal price) throws IOException, InterruptedException;

    /**
     * 锁单操作
     * @param productId
     * @return 操作提示信息
     */
    String clockXmOrder(Long productId,Integer addressId,String bankCardNumber,String passCode) throws IOException, InterruptedException;

    /**
     * 业务主流程 真正执行业务的方法
     * @param userName
     * @param heartPrice
     */
    void buyXmDataOrder(String userName,String heartPrice,String goodName,String subType);
}
